package com.ruoyi.design.service.impl;

import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.design.domain.ProductDict;
import com.ruoyi.design.mapper.ProductDictMapper;
import com.ruoyi.design.service.IProductDictService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;
import java.util.Map;

@Service
public class ProductDictServiceImpl implements IProductDictService
{
    @Resource
    private ProductDictMapper productDictMapper;

    /**
     * 查询字典数据
     *
     * @param dictCode 字典数据主键
     * @return 字典数据
     */
    @Override
    public ProductDict selectProductDictByDictCode(Long dictCode)
    {
        return productDictMapper.selectProductDictByDictCode(dictCode);
    }

    /**
     * 查询字典数据列表
     *
     * @param productDict 字典数据
     * @return 字典数据
     */
    @Override
    public List<ProductDict> selectProductDictList(ProductDict productDict)
    {
        return productDictMapper.selectProductDictList(productDict);
    }

    /**
     * 新增字典数据
     *
     * @param productDict 字典数据
     * @return 结果
     */
    @Override
    public int insertProductDict(ProductDict productDict)
    {
        productDict.setCreateTime(DateUtils.getNowDate());
        return productDictMapper.insertProductDict(productDict);
    }

    /**
     * 修改字典数据
     *
     * @param productDict 字典数据
     * @return 结果
     */
    @Override
    public int updateProductDict(ProductDict productDict)
    {
        productDict.setUpdateTime(DateUtils.getNowDate());
        return productDictMapper.updateProductDict(productDict);
    }

    /**
     * 批量删除字典数据
     *
     * @param dictCodes 需要删除的字典数据主键
     * @return 结果
     */
    @Override
    public int deleteProductDictByDictCodes(Long[] dictCodes)
    {
        return productDictMapper.deleteProductDictByDictCodes(dictCodes);
    }

    /**
     * 删除字典数据信息
     *
     * @param dictCode 字典数据主键
     * @return 结果
     */
    @Override
    public int deleteProductDictByDictCode(Long dictCode)
    {
        return productDictMapper.deleteProductDictByDictCode(dictCode);
    }

    @Override
    public List<ProductDict> dictDataByDictType(Map<String,Object>map) {
        return productDictMapper.dictDataByDictType(map);
    }

    @Override
    public Long selectDictCodeByProductDict(ProductDict dict) {
        return productDictMapper.selectDictCodeByProductDict(dict);
    }
}
